home *** CD-ROM | disk | FTP | other *** search
/ Freesoft 1997 May / Freesoft_1997-05_cd.bin / inzer / minolta / drivers / WL400 / W3.1 disk 1 / SETUPAPI.IN_ / SETUPAPI.IN
Text File  |  1994-12-06  |  20KB  |  540 lines

  1. GLOBAL hSetup AS INTEGER
  2. GLOBAL fFrameInit AS INTEGER
  3. GLOBAL fInstallInit AS INTEGER
  4. CONST SM_CXSCREEN = 0
  5. CONST SM_CYSCREEN = 1
  6. CONST WF_80x87 = 1024
  7. CONST WF_CPU186 = 128
  8. CONST WF_CPU286 = 2
  9. CONST WF_CPU386 = 4
  10. CONST WF_CPU486 = 8
  11. CONST WF_STANDARD = 16
  12. CONST WF_ENHANCED = 32
  13. CONST MB_OK = 0
  14. CONST MB_ICONHAND = 16
  15. CONST MB_TASKMODAL = 8192
  16. DECLARE FUNCTION DoMsgBox LIB "mscomstf.dll" (lpText$,lpCaption$,wType%) As INTEGER
  17. DECLARE FUNCTION GetWindowsDirectory LIB "kernel" (szBuf$, cbBuf%) AS INTEGER
  18. DECLARE FUNCTION GetSystemDirectory LIB "kernel" (szBuf$, cbBuf%) AS INTEGER
  19. DECLARE FUNCTION GetProfileString LIB "kernel" (szSect$, szKey$, szDefault$, szBuf$, cbBuf%) AS INTEGER
  20. DECLARE FUNCTION GetVersion LIB "kernel" AS INTEGER
  21. DECLARE FUNCTION GetSystemMetrics LIB "user" (nIndex%) AS INTEGER
  22. DECLARE FUNCTION GetWinFlags LIB "kernel" AS LONG
  23. CONST cmoVital = 1
  24. CONST cmoCopy = 2
  25. CONST cmoUndo = 4
  26. CONST cmoRoot = 8
  27. CONST cmoDecompress = 16
  28. CONST cmoTimeStamp = 32
  29. CONST cmoReadOnly = 64
  30. CONST cmoBackup = 128
  31. CONST cmoForce = 256
  32. CONST cmoRemove = 512
  33. CONST cmoOverwrite = 1024
  34. CONST cmoAppend = 2048
  35. CONST cmoPrepend = 4096
  36. CONST cmoNone = 0
  37. CONST cmoAll = 65535
  38. CONST femExists = 0
  39. CONST femRead = 1
  40. CONST femWrite = 2
  41. CONST femReadWrite = 3
  42. CONST ynrcNo = 0
  43. CONST ynrcYes = 1
  44. CONST ynrcErr1 = 2
  45. CONST ynrcErr2 = 3
  46. CONST ynrcErr3 = 4
  47. CONST ynrcErr4 = 5
  48. CONST ynrcErr5 = 6
  49. CONST ynrcErr6 = 7
  50. CONST ynrcErr7 = 8
  51. CONST ynrcErr8 = 9
  52. CONST ynrcErr9 = 10
  53. CONST grcOkay = 0
  54. CONST grcNotOkay = 1
  55. CONST grcUserQuit = 48
  56. CONST cbSymValMax = 512
  57. CONST STFERR = 1024
  58. CONST STFQUIT = 1025
  59. CONST scmOff = 0
  60. CONST scmOnIgnore = 1
  61. CONST scmOnFatal = 2
  62. DECLARE FUNCTION FParseFATPathIntoPieces LIB "mscomstf.dll" (szPath$, szVol$, cbVol%, szDir$, cbDir%, szFile$, cbFile%) AS INTEGER
  63. DECLARE FUNCTION FOpenInf LIB "mscomstf.dll" (szFile$, fCheck%, fCheckSyms%) AS INTEGER
  64. DECLARE FUNCTION FSetSilent LIB "mscomstf.dll" (mode%) AS INTEGER
  65. DECLARE FUNCTION FSetBeepingMode LIB "mscomstf.dll" (mode%) AS INTEGER
  66. DECLARE FUNCTION HShowWaitCursor LIB "msshlstf.dll" AS INTEGER
  67. DECLARE FUNCTION FRestoreCursor LIB "msshlstf.dll" (hPrev%) AS INTEGER
  68. DECLARE FUNCTION FOpenLogFile LIB "mscomstf.dll" (szFile$, fAppend%) AS INTEGER
  69. DECLARE FUNCTION FCloseLogFile LIB "mscomstf.dll" AS INTEGER
  70. DECLARE FUNCTION FWriteToLogFile LIB "mscomstf.dll" (sz$, fRequire%) AS INTEGER
  71. DECLARE FUNCTION CbGetInfSectionKeyField LIB "mscomstf.dll" (szSect$, szKey$, iField%, szBuf$, cbBuf%) AS INTEGER
  72. DECLARE FUNCTION FMakeListInfSectionField LIB "mscomstf.dll" (szSym$, szSect$, iField%) AS INTEGER
  73. DECLARE FUNCTION PbSaveMemInf LIB "mscomstf.dll" AS LONG
  74. DECLARE SUB RestoreMemInf LIB "mscomstf.dll" (pb&)
  75. DECLARE SUB FreeMemInf LIB "mscomstf.dll" (pb&)
  76. DECLARE FUNCTION FSetBitmap LIB "msshlstf.dll" (szDll$, Bitmap%) AS INTEGER
  77. DECLARE FUNCTION FSetAbout LIB "msshlstf.dll" (szAbout1$, szAbout2$) AS INTEGER
  78. DECLARE FUNCTION FDoDialogExt LIB "msuilstf.dll" (hwnd%, szDll$, Dlg%, szDlgProc$, szHelpDll$, HelpDlg%, szHelpProc$) AS INTEGER
  79. DECLARE FUNCTION FKillNDialogs LIB "msuilstf.dll" (n%) AS INTEGER
  80. DECLARE SUB SetWindowText LIB "User" (hwnd%, lpString$)
  81. DECLARE FUNCTION FSetSymbolValue LIB "msshlstf.dll" (szSymbol$, szValue$) AS INTEGER
  82. DECLARE FUNCTION FRemoveSymbol LIB "mscomstf.dll" (szSym$) AS INTEGER
  83. DECLARE FUNCTION CbGetSymbolValue LIB "mscomstf.dll" (szSymbol$, szValue$, Length%) AS INTEGER
  84. DECLARE FUNCTION UsGetListLength LIB "mscomstf.dll" (szSymbol$) AS INTEGER
  85. DECLARE FUNCTION CbGetListItem LIB "mscomstf.dll" (szListSymbol$, n%, szListItem$, cbMax%) AS INTEGER
  86. DECLARE FUNCTION FAddListItem LIB "mscomstf.dll" (szListSymbol$, szListItem$) AS INTEGER
  87. DECLARE FUNCTION FReplaceListItem LIB "mscomstf.dll" (szListSymbol$, n%, szListItem$) AS INTEGER
  88. DECLARE FUNCTION FSetSymbolToListOfInfKeys LIB "mscomstf.dll" (szSym$, szSect$, fNulls%) AS INTEGER
  89. DECLARE FUNCTION InitializeFrame LIB "msshlstf.dll" (szCmdLine$) AS INTEGER
  90. DECLARE FUNCTION HwndFrame LIB "msshlstf.dll" AS INTEGER
  91. DECLARE FUNCTION HinstFrame LIB "msshlstf.dll" AS INTEGER
  92. DECLARE SUB ProSetPos LIB "msinsstf.dll" (x%, y%)
  93. DECLARE FUNCTION FAddSectionFilesToCopyList LIB "mscomstf.dll" (szSect$, szSrc$, szDest$) AS INTEGER
  94. DECLARE FUNCTION FAddSectionKeyFileToCopyList LIB "mscomstf.dll" (szSect$, szKey$, szSrc$, szDest$) AS INTEGER
  95. DECLARE FUNCTION FAddSpecialFileToCopyList LIB "mscomstf.dll" (szSect$, szKey$, szSrc$, szDest$) AS INTEGER
  96. DECLARE FUNCTION GrcCopyFilesInCopyList LIB "msinsstf.dll" (hInstance%) AS INTEGER
  97. DECLARE FUNCTION FRemoveIniSection LIB "msinsstf.dll" (szFile$, szSect$, cmo%) AS INTEGER
  98. DECLARE FUNCTION FCreateIniKeyValue LIB "msinsstf.dll" (szFile$, szSect$, szKey$, szValue$, cmo%) AS INTEGER
  99. DECLARE FUNCTION FRemoveIniKey LIB "msinsstf.dll" (szFile$, szSect$, szKey$, cmo%) AS INTEGER
  100. DECLARE FUNCTION FCreateSysIniKeyValue LIB "msinsstf.dll" (szFile$, szSect$, szKey$, szValue$, cmo%) AS INTEGER
  101. DECLARE FUNCTION FCreateProgManGroup LIB "msinsstf.dll" (szGroup$, szPath$, cmo%) AS INTEGER
  102. DECLARE FUNCTION FCreateProgManItem LIB "msinsstf.dll" (szGroup$, szItem$, szCmd$, cmo%) AS INTEGER
  103. DECLARE FUNCTION FShowProgManGroup LIB "msinsstf.dll" (szGroup$, szCmd$, cmo%) AS INTEGER
  104. DECLARE FUNCTION FStampResource LIB "msinsstf.dll" (szSect$, szKey$, szDst$, wResType%, wResId%, szData$, cbData%) AS INTEGER
  105. DECLARE FUNCTION FDumpCopyListToFile LIB "msinsstf.dll" (szFile$) AS INTEGER
  106. DECLARE SUB ResetCopyList LIB "msinsstf.dll"
  107. DECLARE FUNCTION LcbGetCopyListCost LIB "msinsstf.dll" (szExtraList$, szCostList$, szNeedList$) AS LONG
  108. DECLARE FUNCTION FAddDos5Help LIB "msinsstf.dll" (szProgName$, szProgHelp$, cmo%) AS INTEGER
  109. DECLARE FUNCTION FCopyOneFile LIB "msinsstf.dll" (szSrc$, szDest$, cmo%, fAppend%) AS INTEGER
  110. DECLARE FUNCTION YnrcRemoveFile LIB "msinsstf.dll" (szFullPathSrc$, cmo%) AS INTEGER
  111. DECLARE FUNCTION YnrcBackupFile LIB "msinsstf.dll" (szFullPath$, szBackup$, cmo%) AS INTEGER
  112. DECLARE FUNCTION FInitializeInstall LIB "msinsstf.dll" (hinst%, hwndFrame%) AS INTEGER
  113. DECLARE FUNCTION WFindFileUsingFileOpen LIB "msinsstf.dll" (szFile$, szBuf$, cbBuf%) AS INTEGER
  114. DECLARE FUNCTION FIsDirWritable LIB "msinsstf.dll" (szDir$) AS INTEGER
  115. DECLARE FUNCTION FIsFileWritable LIB "msinsstf.dll" (szFile$) AS INTEGER
  116. DECLARE FUNCTION FAddToBillboardList LIB "msinsstf.dll" (szDll$, idDlg%, szProc$, lTicks&) AS INTEGER
  117. DECLARE FUNCTION FClearBillboardList LIB "msinsstf.dll" AS INTEGER
  118. DECLARE FUNCTION FSetRestartDir LIB "msinsstf.dll" (szDir$) AS INTEGER
  119. DECLARE FUNCTION FRestartListEmpty LIB "msinsstf.dll" AS INTEGER
  120. DECLARE FUNCTION FExitExecRestart LIB "msinsstf.dll" AS INTEGER
  121. DECLARE FUNCTION SetCopyMode LIB "msinsstf.dll" (fMode%) AS INTEGER
  122. DECLARE FUNCTION GetCopyMode LIB "msinsstf.dll" AS INTEGER
  123. DECLARE FUNCTION SetDecompMode LIB "msinsstf.dll" (fMode%) AS INTEGER
  124. DECLARE FUNCTION GetDecompMode LIB "msinsstf.dll" AS INTEGER
  125. DECLARE FUNCTION SetSizeCheckMode LIB "msinsstf.dll" (scmMode%) AS INTEGER
  126. DECLARE FUNCTION FPrependToPath LIB "msinsstf.dll" (szSrc$, szDst$, szDir$, cmo%) AS INTEGER
  127. DECLARE FUNCTION SetTimeValue LIB "msinsstf.dll" (usHours%, usMinutes%, usSeconds%) AS INTEGER
  128. DECLARE SUB ForceRestartOn LIB "msinsstf.dll"
  129. DECLARE SUB SetBitmap(szDll$, Bitmap%)
  130. DECLARE SUB SetAbout(szAbout1$, szAbout2$)
  131. DECLARE FUNCTION UIStartDlgExt(szDll$, Dlg%, szDlgProc$, szHelpDll$, HelpDlg%, szHelpProc$) AS STRING
  132. DECLARE FUNCTION UIStartDlg(szDll$, Dlg%, szDlgProc$, HelpDlg%, szHelpProc$) AS STRING
  133. DECLARE SUB UIPop (n%)
  134. DECLARE SUB UIPopAll
  135. DECLARE SUB SetTitle (sz$)
  136. DECLARE SUB ReadInfFile (szFile$)
  137. DECLARE SUB SetSymbolValue (szSymbol$, szValue$)
  138. DECLARE SUB RemoveSymbol (szSym$)
  139. DECLARE FUNCTION GetSymbolValue (szSymbol$) AS STRING
  140. DECLARE FUNCTION GetListLength(szSymbol$) AS INTEGER
  141. DECLARE SUB MakeListFromSectionKeys (szSymbol$, szSect$)
  142. DECLARE FUNCTION GetListItem(szSymbol$, n%) AS STRING
  143. DECLARE SUB AddListItem(szSymbol$, szItem$)
  144. DECLARE SUB ReplaceListItem(szSymbol$, n%, szItem$)
  145. DECLARE FUNCTION InitFrame (szCmdLine$) AS INTEGER
  146. DECLARE FUNCTION InitSetup (szCmdLine$) AS INTEGER
  147. DECLARE FUNCTION ShowWaitCursor AS INTEGER
  148. DECLARE SUB RestoreCursor (hPrev%)
  149. DECLARE FUNCTION SetBeepingMode (mode%) AS INTEGER
  150. DECLARE FUNCTION SetSilentMode (mode%) AS INTEGER
  151. DECLARE FUNCTION GetSectionKeyFilename (szSect$, szKey$) AS STRING
  152. DECLARE SUB MakeListFromSectionDate (szSym$, szSect$)
  153. DECLARE SUB MakeListFromSectionFilename (szSym$, szSect$)
  154. DECLARE SUB MakeListFromSectionSize (szSym$, szSect$)
  155. DECLARE SUB MakeListFromSectionVersion (szSym$, szSect$)
  156. DECLARE SUB AddSectionFilesToCopyList (szSect$, szSrc$, szDest$)
  157. DECLARE SUB AddSectionKeyFileToCopyList (szSect$, szKey$, szSrc$, szDest$)
  158. DECLARE SUB CopyFilesInCopyList
  159. DECLARE SUB RemoveIniSection (szFile$, szSect$, cmo%)
  160. DECLARE SUB CreateIniKeyValue (szFile$, szSect$, szKey$, szValue$, cmo%)
  161. DECLARE SUB RemoveIniKey (szFile$, szSect$, szKey$, cmo%)
  162. DECLARE SUB CreateSysIniKeyValue (szFile$, szSect$, szKey$, szValue$, cmo%)
  163. DECLARE SUB CreateProgmanGroup (szGroup$, szPath$, cmo%)
  164. DECLARE SUB CreateProgmanItem (szGroup$, szItem$, szCmd$, szOther$, cmo%)
  165. DECLARE SUB ShowProgmanGroup (szGroup$, Cmd%, cmo%)
  166. DECLARE SUB DumpCopyList (szFile$)
  167. DECLARE SUB ClearCopyList
  168. DECLARE FUNCTION GetCopyListCost (szExtraList$, szCostList$, szNeedList$) AS LONG
  169. DECLARE SUB CopyFile (szFullPathSrc$, szFullPathDst$, cmo%, fAppend%)
  170. DECLARE SUB RemoveFile (szFullPathSrc$, cmo%)
  171. DECLARE SUB InitInstall
  172. DECLARE SUB SetRestartDir(szDir$)
  173. DECLARE FUNCTION RestartListEmpty AS INTEGER
  174. DECLARE FUNCTION ExitExecRestart AS INTEGER
  175. DECLARE FUNCTION FindFileUsingFileOpen (szFile$) AS STRING
  176. DECLARE FUNCTION IsDirWritable (szDir$) AS INTEGER
  177. DECLARE FUNCTION GetWindowsMode AS INTEGER
  178. DECLARE FUNCTION GetWindowsDir AS STRING
  179. DECLARE FUNCTION GetWindowsSysDir AS STRING
  180. DECLARE FUNCTION IsWindowsShared AS INTEGER
  181. DECLARE FUNCTION GetScreenWidth AS INTEGER
  182. DECLARE FUNCTION GetScreenHeight AS INTEGER
  183. FUNCTION InitSetup(szCmdLine$) STATIC AS INTEGER
  184. fFrameInit = 0
  185. fInstallInit = 0
  186. IF hSetup > 0 THEN
  187. END IF
  188. i% = InitFrame(szCmdLine$)
  189. fFrameInit = 1
  190. InitInstall
  191. fInstallInit = 1
  192. InitSetup = i%
  193. END FUNCTION
  194. FUNCTION InitFrame(szCmdLine$) STATIC AS INTEGER
  195. IF hSetup > 0 THEN
  196. ELSE
  197. i% = InitializeFrame(szCmdLine$)
  198. IF i% = -1 THEN
  199. END
  200. ELSEIF i% = 0 THEN
  201. END
  202. ELSE
  203. InitFrame = i%
  204. END IF
  205. END IF
  206. END FUNCTION
  207. SUB SetBitmap(szDll$, Bitmap%) STATIC
  208. IF FSetBitmap(szDll$, Bitmap%) = 0 THEN
  209. ERROR STFERR
  210. END IF
  211. END SUB
  212. SUB SetAbout(szAbout1$, szAbout2$) STATIC
  213. IF FSetAbout(szAbout1$, szAbout2$) = 0 THEN
  214. ERROR STFERR
  215. END IF
  216. END SUB
  217. SUB SetTitle(sz$) STATIC
  218. SetWindowText HwndFrame(), sz$
  219. END SUB
  220. SUB ReadInfFile (szFile$) STATIC
  221. IF FOpenInf(szFile$, 1, 0) = 0 THEN
  222. ERROR STFERR
  223. END IF
  224. END SUB
  225. FUNCTION UIStartDlg(szDll$, Dlg%, szDlgProc$, HelpDlg%, szHelpProc$) STATIC AS STRING
  226. IF FDoDialogExt(HwndFrame(), szDll$, Dlg%, szDlgProc$, szDll$, HelpDlg%, szHelpProc$) = 0 THEN
  227. ERROR STFERR
  228. ELSE
  229. UIStartDlg = GetSymbolValue("DLGEVENT")
  230. END IF
  231. END FUNCTION
  232. FUNCTION UIStartDlgExt(szDll$, Dlg%, szDlgProc$, szHelpDll$, HelpDlg%, szHelpProc$) STATIC AS STRING
  233. IF FDoDialogExt(HwndFrame(), szDll$, Dlg%, szDlgProc$, szHelpDll$, HelpDlg%, szHelpProc$) = 0 THEN
  234. ERROR STFERR
  235. ELSE
  236. UIStartDlgExt = GetSymbolValue("DLGEVENT")
  237. END IF
  238. END FUNCTION
  239. SUB UIPop (n%) STATIC
  240. IF FKillNDialogs(n%) = 0 THEN
  241. ERROR STFERR
  242. END IF
  243. END SUB
  244. SUB UIPopAll STATIC
  245. IF FKillNDialogs(65535) = 0 THEN
  246. ERROR STFERR
  247. END IF
  248. END SUB
  249. FUNCTION GetSymbolValue(szSymbol$) STATIC AS STRING
  250. szValue$ = string$(cbSymValMax,32)
  251. Length% = CbGetSymbolValue(szSymbol$, szValue$, cbSymValMax)
  252. GetSymbolValue = szValue$
  253. IF szSymbol$ = "" THEN
  254. ERROR STFERR
  255. END IF
  256. szValue$ = ""
  257. END FUNCTION
  258. FUNCTION GetListLength(szSymbol$) STATIC AS INTEGER
  259. GetListLength = UsGetListLength(szSymbol$)
  260. IF szSymbol$ = "" THEN
  261. ERROR STFERR
  262. END IF
  263. END FUNCTION
  264. FUNCTION GetListItem(szListSymbol$, nItem%) STATIC AS STRING
  265. szListItem$ = string$(cbSymValMax,32)
  266. Length% = CbGetListItem(szListSymbol$, nItem%, szListItem$, cbSymValMax)
  267. GetListItem = szListItem$
  268. IF szListSymbol$ = "" THEN
  269. ERROR STFERR
  270. END IF
  271. if nItem% <= 0 or nItem% > GetListLength(szListSymbol$) then
  272. ERROR STFERR
  273. end if
  274. szListItem$ = ""
  275. END FUNCTION
  276. SUB AddListItem(szSymbol$, szItem$) STATIC
  277. IF FAddListItem(szSymbol$, szItem$) = 0 THEN
  278. ERROR STFERR
  279. END IF
  280. END SUB
  281. SUB ReplaceListItem(szSymbol$, n%, szItem$) STATIC
  282. IF FReplaceListItem(szSymbol$, n%, szItem$) = 0 THEN
  283. ERROR STFERR
  284. END IF
  285. END SUB
  286. SUB MakeListFromSectionKeys(szSymbol$, szSect$) STATIC
  287. IF FSetSymbolToListOfInfKeys(szSymbol$, szSect$, 1) = 0 THEN
  288. ERROR STFERR
  289. END IF
  290. END SUB
  291. SUB SetSymbolValue(szSymbol$, szValue$) STATIC
  292. IF FSetSymbolValue(szSymbol$, szValue$) = 0 THEN
  293. ERROR STFERR
  294. END IF
  295. END SUB
  296. SUB RemoveSymbol(szSym$) STATIC
  297. IF FRemoveSymbol(szSym$) = 0 THEN
  298. ERROR STFERR
  299. END IF
  300. END SUB
  301. FUNCTION ShowWaitCursor STATIC AS INTEGER
  302. ShowWaitCursor = HShowWaitCursor
  303. END FUNCTION
  304. SUB RestoreCursor (hPrev%) STATIC
  305. i% = FRestoreCursor(hPrev%)
  306. IF i% = 0 THEN
  307. ERROR STFERR
  308. END IF
  309. END SUB
  310. FUNCTION SetBeepingMode (mode%) STATIC AS INTEGER
  311. SetBeepingMode = FSetBeepingMode(mode%)
  312. END FUNCTION
  313. FUNCTION SetSilentMode (mode%) STATIC AS INTEGER
  314. SetSilentMode = FSetSilent(mode%)
  315. END FUNCTION
  316. FUNCTION GetSectionKeyFilename (szSect$, szKey$) STATIC AS STRING
  317. szBuf$ = string$(128, 32)
  318. Length% = CbGetInfSectionKeyField(szSect$, szKey$, 1, szBuf$, 128)
  319. IF Length% = -1 THEN
  320. ERROR STFERR
  321. END IF
  322. GetSectionKeyFilename = szBuf$
  323. szBuf$ = ""
  324. END FUNCTION
  325. SUB MakeListFromSectionDate (szSym$, szSect$) STATIC
  326. IF FMakeListInfSectionField(szSym$, szSect$, 5) = 0 THEN
  327. ERROR STFERR
  328. END IF
  329. END SUB
  330. SUB MakeListFromSectionFilename (szSym$, szSect$) STATIC
  331. IF FMakeListInfSectionField(szSym$, szSect$, 1) = 0 THEN
  332. ERROR STFERR
  333. END IF
  334. END SUB
  335. SUB MakeListFromSectionSize (szSym$, szSect$) STATIC
  336. IF FMakeListInfSectionField(szSym$, szSect$, 15) = 0 THEN
  337. ERROR STFERR
  338. END IF
  339. END SUB
  340. SUB MakeListFromSectionVersion (szSym$, szSect$) STATIC
  341. IF FMakeListInfSectionField(szSym$, szSect$, 19) = 0 THEN
  342. ERROR STFERR
  343. END IF
  344. END SUB
  345. SUB InitInstall STATIC
  346. IF hSetup > 0 THEN
  347. ELSEIF FInitializeInstall(HinstFrame(), HwndFrame()) = 0 THEN
  348. END
  349. END IF
  350. END SUB
  351. SUB RemoveIniSection (szFile$, szSect$, cmo%) STATIC
  352. IF FRemoveIniSection(szFile$, szSect$, cmo%) = 0 THEN
  353. ERROR STFERR
  354. END IF
  355. END SUB
  356. SUB CreateIniKeyValue (szFile$, szSect$, szKey$, szValue$, cmo%) STATIC
  357. IF FCreateIniKeyValue(szFile$, szSect$, szKey$, szValue$, cmo%) = 0 THEN
  358. ERROR STFERR
  359. END IF
  360. END SUB
  361. SUB RemoveIniKey (szFile$, szSect$, szKey$, cmo%) STATIC
  362. IF FRemoveIniKey(szFile$, szSect$, szKey$, cmo%) = 0 THEN
  363. ERROR STFERR
  364. END IF
  365. END SUB
  366. SUB CreateSysIniKeyValue (szFile$, szSect$, szKey$, szValue$, cmo%) STATIC
  367. IF FCreateSysIniKeyValue(szFile$, szSect$, szKey$, szValue$, cmo%) = 0 THEN
  368. ERROR STFERR
  369. END IF
  370. END SUB
  371. SUB DumpCopyList (szFile$) STATIC
  372. IF FDumpCopyListToFile (szFile$) = 0 THEN
  373. ERROR STFERR
  374. END IF
  375. END SUB
  376. SUB ClearCopyList STATIC
  377. ResetCopyList
  378. END SUB
  379. FUNCTION GetCopyListCost (szExtraList$, szCostList$, szNeedList$) STATIC AS LONG
  380. lNeed& = LcbGetCopyListCost (szExtraList$, szCostList$, szNeedList$)
  381. IF lNeed& < 0 THEN
  382. ERROR STFERR
  383. END IF
  384. GetCopyListCost = lNeed&
  385. END FUNCTION
  386. SUB CopyFilesInCopyList STATIC
  387. grc% = GrcCopyFilesInCopyList (HinstFrame())
  388. IF grc% = grcUserQuit THEN
  389. ERROR STFQUIT
  390. ELSEIF grc% > 0 THEN
  391. ERROR STFERR
  392. END IF
  393. END SUB
  394. SUB CopyFile (szFullPathSrc$, szFullPathDst$, cmo%, fAppend%) STATIC
  395. PRINT "CF<src: "; szFullPathSrc$; "> <desc: "; szFullPathDst$; ">"
  396. IF FCopyOneFile(szFullPathSrc$, szFullPathDst$, (cmo OR cmoCopy), fAppend%) = 0 THEN
  397. ERROR STFERR
  398. END IF
  399. END SUB
  400. SUB RemoveFile (szFullPathSrc$, cmo%) STATIC
  401. IF YnrcRemoveFile(szFullPathSrc$, cmo%) = ynrcNo THEN
  402. ERROR STFERR
  403. END IF
  404. END SUB
  405. SUB AddSectionFilesToCopyList (szSect$, szSrc$, szDest$) STATIC
  406. IF FAddSectionFilesToCopyList (szSect$, szSrc$, szDest$) = 0 THEN
  407. ERROR STFERR
  408. END IF
  409. END SUB
  410. SUB AddSectionKeyFileToCopyList (szSect$, szKey$, szSrc$, szDest$) STATIC
  411. IF FAddSectionKeyFileToCopyList (szSect$, szKey$, szSrc$, szDest$) = 0 THEN
  412. ERROR STFERR
  413. END IF
  414. END SUB
  415. FUNCTION FindFileUsingFileOpen (szFile$) STATIC AS STRING
  416. szBuf$ = STRING$(512, 32)
  417. wRet% = WFindFileUsingFileOpen(szFile$, szBuf$, len(szBuf$))
  418. IF wRet% = 0 THEN
  419. FindFileUsingFileOpen = szBuf$
  420. ELSEIF wRet% = 1 THEN
  421. FindFileUsingFileOpen = ""
  422. ELSE
  423. ERROR STFERR
  424. END IF
  425. szBuf$ = ""
  426. END FUNCTION
  427. FUNCTION IsDirWritable (szDir$) STATIC AS INTEGER
  428. IsDirWritable = FIsDirWritable(szDir$)
  429. END FUNCTION
  430. FUNCTION GetWindowsMode STATIC AS INTEGER
  431. GetWindowsMode = 0
  432. longTmp& = GetWinFlags()
  433. IF longTmp& AND WF_STANDARD THEN
  434. GetWindowsMode = 1
  435. ELSEIF longTmp& AND WF_ENHANCED THEN
  436. GetWindowsMode = 2
  437. END IF
  438. END FUNCTION
  439. FUNCTION GetWindowsDir STATIC AS STRING
  440. szBuf$ = string$(256, 32)
  441. cbBuf% = GetWindowsDirectory(szBuf$, 256)
  442. IF cbBuf% = 0 THEN
  443. GetWindowsDir = ""
  444. ERROR STFERR
  445. ELSE
  446. szBuf$ = RTRIM$(szBuf$)
  447. IF MID$(szBuf$, 1, 1) = "\" THEN
  448. szBuf$ = MID$(GetWindowsSysDir, 1, 2) + szBuf$
  449. ELSEIF MID$(szBuf$, 2, 1) <> ":" THEN
  450. szBuf$ = MID$(GetWindowsSysDir, 1, 3) + szBuf$
  451. END IF
  452. IF MID$(szBuf$, LEN(szBuf$), 1) <> "\" THEN
  453. szBuf$ = szBuf$ + "\"
  454. END IF
  455. GetWindowsDir = szBuf$
  456. END IF
  457. szBuf$ = ""
  458. END FUNCTION
  459. FUNCTION GetWindowsSysDir STATIC AS STRING
  460. szBuf$ = string$(256, 32)
  461. cbBuf% = GetSystemDirectory(szBuf$, 256)
  462. IF cbBuf% = 0 THEN
  463. ERROR STFERR
  464. ELSE
  465. szBuf$ = RTRIM$(szBuf$)
  466. IF MID$(szBuf$, 1, 1) = "\" THEN
  467. szBuf$ = MID$(CURDIR$, 1, 2) + szBuf$
  468. ELSEIF MID$(szBuf$, 2, 1) <> ":" THEN
  469. szBuf$ = MID$(CURDIR$, 1, 3) + szBuf$
  470. END IF
  471. IF MID$(szBuf$, LEN(szBuf$), 1) <> "\" THEN
  472. szBuf$ = szBuf$ + "\"
  473. END IF
  474. GetWindowsSysDir = szBuf$
  475. END IF
  476. szBuf$ = ""
  477. END FUNCTION
  478. FUNCTION IsWindowsShared STATIC AS INTEGER
  479. szWin$ = UCASE$(GetWindowsDir())
  480. szSys$ = UCASE$(GetWindowsSysDir())
  481. IF len(szWin$) = 0 THEN
  482. ERROR STFERR
  483. END IF
  484. IF len(szSys$) <= len(szWin$) THEN
  485. IsWindowsShared = 1
  486. ELSE
  487. szSys$ = MID$(szSys$, 1, len(szWin$))
  488. IF szWin$ = szSys$ THEN
  489. IsWindowsShared = 0
  490. ELSE
  491. IsWindowsShared = 1
  492. END IF
  493. END IF
  494. END FUNCTION
  495. FUNCTION GetScreenWidth STATIC AS INTEGER
  496. GetScreenWidth = GetSystemMetrics(SM_CXSCREEN)
  497. END FUNCTION
  498. FUNCTION GetScreenHeight STATIC AS INTEGER
  499. GetScreenHeight = GetSystemMetrics(SM_CYSCREEN)
  500. END FUNCTION
  501. SUB SetRestartDir (szDir$) STATIC
  502. IF FSetRestartDir(szDir$) = 0 THEN
  503. ERROR STFERR
  504. END IF
  505. END SUB
  506. SUB CreateProgmanItem (szGroup$, szItem$, szCmd$, szOther$, cmo%) STATIC
  507. szItemNew$ = szItem$
  508. IF szOther$ <> "" THEN
  509. szItemNew$ = szItem$ + "," + szOther$
  510. END IF
  511. IF FCreateProgManItem(szGroup$, szItemNew$, szCmd$, cmo%) = 0 THEN
  512. ERROR STFERR
  513. END IF
  514. szItemNew$ = ""
  515. END SUB
  516. SUB CreateProgmanGroup (szGroup$, szPath$, cmo%) STATIC
  517. IF FCreateProgManGroup(szGroup$, szPath$, cmo%) = 0 THEN
  518. ERROR STFERR
  519. END IF
  520. END SUB
  521. SUB ShowProgmanGroup (szGroup$, Cmd%, cmo%) STATIC
  522. IF FShowProgManGroup(szGroup$, STR$(Cmd%), cmo%) = 0 THEN
  523. ERROR STFERR
  524. END IF
  525. END SUB
  526. FUNCTION RestartListEmpty STATIC AS INTEGER
  527. IF FRestartListEmpty() = 0 THEN
  528. RestartListEmpty = 0
  529. ELSE
  530. RestartListEmpty = 1
  531. END IF
  532. END FUNCTION
  533. FUNCTION ExitExecRestart STATIC AS INTEGER
  534. ExitExecRestart = FExitExecRestart
  535. END FUNCTION
  536. TRAP CleanupTrap From "MSSHLSTF.DLL"
  537. End Trap
  538. hSetup = InitSetup(COMMAND$)
  539. ON ERROR GOTO QUIT
  540.